<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Synan: /common/COMSyntaxHolder.h</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.4 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="examples.html">Examples</a></div>
<h1>/common/COMSyntaxHolder.h</h1><div class="fragment"><pre class="fragment">
<span class="comment">// CCOMSyntaxHolder is a class which is created to work with Dialing Shallow Syntax</span>
<span class="comment">// via COM-interfaces. The main methods of the class are the following:</span>
<span class="comment">// 1.   BOOL LoadSyntax(MorphLanguageEnum langua) - loading all dictionaries </span>
<span class="comment">// of the syntax system into the memory for the  given language</span>
<span class="comment">// 2.   BOOL GetSentencesFromSynAn(string str)  - building a syntax structure for </span>
<span class="comment">//    the given text ("str")</span>

 
<span class="preprocessor">#ifndef COMSyntaxHolder</span>
<span class="preprocessor"></span><span class="preprocessor">#define COMSyntaxHolder</span>
<span class="preprocessor"></span>
<span class="preprocessor">#include "utilit.h"</span>
<span class="preprocessor">#include &lt;comdef.h&gt;</span>
<span class="preprocessor">#include &lt;atlbase.h&gt;</span>
<span class="preprocessor">#import "../../bin/Lemmatizer.tlb"</span>
<span class="preprocessor">#import "../../bin/MAPost.tlb"</span>
<span class="preprocessor">#import "../../bin/Agramtab.tlb"</span>
<span class="preprocessor">#import "../../bin/Graphan.tlb"</span>
<span class="preprocessor">#import "../../bin/Synan.tlb"</span>

<span class="keyword">class </span>CCOMSyntaxHolder
{
<span class="keyword">public</span>:
        MorphLanguageEnum                               m_CurrentLanguage;

        GRAPHANLib::IGraphmatFilePtr    m_piGraphan;
        LEMMATIZERLib::ILemmatizerPtr   m_piLemmatizer;
        AGRAMTABLib::IGramTabPtr                m_pGramTab;
        MAPOSTLib::IMAPostPtr m_piMAPost;
        SYNANLib::ISentencesCollectionPtr               m_piSentCollection;
        LEMMATIZERLib::IPLMLineCollectionPtr    m_piAfterMorphPlmLines;
        LEMMATIZERLib::IPLMLineCollectionPtr    m_piBeforeSyntaxPlmLines;

        CCOMSyntaxHolder();
        ~CCOMSyntaxHolder();
        BOOL LoadSyntax(MorphLanguageEnum langua);
        
        <span class="keywordtype">void</span> DeleteProcessors();
        BOOL LoadSyntaxModule(MorphLanguageEnum langua);

        BOOL BuildBeforeSyntax(string str, BOOL bFile, BOOL bWriteIntermFiles, BOOL bSaveIntermResults);
        BOOL BuildSyntax(BOOL bSaveIntermResults);
        BOOL GetSentencesFromSynAn(string str, BOOL bFile, BOOL bWriteIntermFiles, BOOL bSaveIntermResults);
        
        
        
};
<span class="keyword">extern</span> string  GetClauseTypeDescr(MorphLanguageEnum     Language, <span class="keyword">const</span> SYNANLib::IClausePtr&amp; piClause, <span class="keywordtype">int</span> ClauseRootNo);
<span class="preprocessor">#endif</span>
</pre></div> <hr size="1"><address style="align: right;"><small>Generated on Tue Feb 7 15:38:47 2006 for Synan by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.4 </small></address>
</body>
</html>
